home *** CD-ROM | disk | FTP | other *** search
/ Chip 2007 January, February, March & April / Chip-Cover-CD-2007-02.iso / Pakiet bezpieczenstwa / mini Pentoo LiveCD 2006.1 / mpentoo-2006.1.iso / livecd.squashfs / var / db / pkg / net-wireless / hostapd-0.5.3 / hostapd-0.5.3.ebuild < prev    next >
Text File  |  2006-05-15  |  4KB  |  133 lines

  1. # Copyright 1999-2006 Gentoo Foundation
  2. # Distributed under the terms of the GNU General Public License v2
  3. # $Header: /var/cvsroot/gentoo-x86/net-wireless/hostapd/hostapd-0.5.3.ebuild,v 1.1 2006/04/29 14:25:14 brix Exp $
  4.  
  5. inherit eutils toolchain-funcs
  6.  
  7. DESCRIPTION="IEEE 802.11 wireless LAN Host AP daemon"
  8. HOMEPAGE="http://hostap.epitest.fi"
  9. SRC_URI="http://hostap.epitest.fi/releases/${P}.tar.gz"
  10.  
  11. LICENSE="|| ( GPL-2 BSD )"
  12. SLOT="0"
  13. KEYWORDS="~amd64 ~ppc ~x86"
  14.  
  15. IUSE="ipv6 logwatch madwifi ssl"
  16.  
  17. RDEPEND="ssl? ( dev-libs/openssl )
  18.         madwifi? ( || ( net-wireless/madwifi-ng net-wireless/madwifi-old ) )"
  19. DEPEND="${RDEPEND}
  20.         sys-apps/sed"
  21.  
  22. src_unpack() {
  23.     local CONFIG=${S}/.config
  24.  
  25.     unpack ${A}
  26.  
  27.     cd ${S}
  28.     epatch ${FILESDIR}/${P}-os_get_random.patch
  29.  
  30.     sed -i -e "s:/etc/hostapd:/etc/hostapd/hostapd:g" \
  31.         ${S}/hostapd.conf
  32.  
  33.     # toolchain setup
  34.     echo "CC = $(tc-getCC)" > ${CONFIG}
  35.  
  36.     # authentication methods
  37.     echo "CONFIG_EAP=y"           >> ${CONFIG}
  38.     echo "CONFIG_EAP_AKA=y"       >> ${CONFIG}
  39.     echo "CONFIG_EAP_GTC=y"       >> ${CONFIG}
  40.     echo "CONFIG_EAP_MD5=y"       >> ${CONFIG}
  41.     echo "CONFIG_EAP_PAX=y"       >> ${CONFIG}
  42.     echo "CONFIG_EAP_PSK=y"       >> ${CONFIG}
  43.     echo "CONFIG_EAP_SIM=y"       >> ${CONFIG}
  44.     echo "CONFIG_EAP_TLV=y"       >> ${CONFIG}
  45.     echo "CONFIG_IAPP=y"          >> ${CONFIG}
  46.     echo "CONFIG_PKCS12=y"        >> ${CONFIG}
  47.     echo "CONFIG_RADIUS_SERVER=y" >> ${CONFIG}
  48.     echo "CONFIG_RSN_PREAUTH=y"   >> ${CONFIG}
  49.     echo "CONFIG_STAKEY=y"        >> ${CONFIG}
  50.  
  51.     if use ssl; then
  52.         # SSL authentication methods
  53.         echo "CONFIG_EAP_MSCHAPV2=y" >> ${CONFIG}
  54.         echo "CONFIG_EAP_PEAP=y"     >> ${CONFIG}
  55.         echo "CONFIG_EAP_TLS=y"      >> ${CONFIG}
  56.         echo "CONFIG_EAP_TTLS=y"     >> ${CONFIG}
  57.     fi
  58.  
  59.     if use ipv6; then
  60.         echo "CONFIG_IPV6=y" >> ${CONFIG}
  61.     fi
  62.  
  63.     # Linux specific drivers
  64.     echo "CONFIG_DRIVER_HOSTAP=y"      >> ${CONFIG}
  65.     echo "CONFIG_DRIVER_PRISM54=y"     >> ${CONFIG}
  66.     echo "CONFIG_DRIVER_WIRED=y"       >> ${CONFIG}
  67.  
  68.     if use madwifi; then
  69.         # Add include path for madwifi-driver headers
  70.         echo "CFLAGS += -I${ROOT}/usr/include/madwifi" >> ${CONFIG}
  71.         echo "CONFIG_DRIVER_MADWIFI=y"                 >> ${CONFIG}
  72.     fi
  73. }
  74.  
  75. src_compile() {
  76.     emake || die "emake failed"
  77.  
  78.     if use ssl; then
  79.         emake nt_password_hash || die "emake nt_password_hash failed"
  80.         emake hlr_auc_gw || die "emake hlr_auc_gw failed"
  81.     fi
  82. }
  83.  
  84. src_install() {
  85.     insinto /etc/hostapd
  86.     doins hostapd.conf hostapd.accept hostapd.deny \
  87.         hostapd.eap_user hostapd.radius_clients hostapd.sim_db hostapd.wpa_psk
  88.  
  89.     dosbin hostapd
  90.     dobin hostapd_cli
  91.     use ssl && dobin nt_password_hash
  92.     use ssl && dobin hlr_auc_gw
  93.  
  94.     newinitd ${FILESDIR}/${P}-init.d hostapd
  95.     newconfd ${FILESDIR}/${P}-conf.d hostapd
  96.  
  97.     doman hostapd.8 hostapd_cli.1
  98.  
  99.     dodoc ChangeLog developer.txt README
  100.  
  101.     docinto examples
  102.     dodoc madwifi.conf wired.conf
  103.  
  104.     if use logwatch; then
  105.         insinto /etc/log.d/conf/services/
  106.         doins logwatch/hostapd.conf
  107.  
  108.         exeinto /etc/log.d/scripts/services/
  109.         doexe logwatch/hostapd
  110.     fi
  111. }
  112.  
  113. pkg_postinst() {
  114.     einfo
  115.     einfo "In order to use ${PN} you need to set up your wireless card"
  116.     einfo "for master mode in /etc/conf.d/net or /etc/conf.d/wireless"
  117.     einfo "and then start /etc/init.d/hostapd."
  118.     einfo
  119.     einfo "Example configuration:"
  120.     einfo
  121.     einfo "config_wlan0=( \"192.168.1.1/24\" )"
  122.     einfo "channel_wlan0=\"6\""
  123.     einfo "essid_wlan0=\"test\""
  124.     einfo "mode_wlan0=\"master\""
  125.     einfo
  126.     if use madwifi; then
  127.         einfo "This package now compiles against the headers installed by"
  128.         einfo "the madwifi driver. You should remerge ${PN} after"
  129.         einfo "upgrading your madwifi driver."
  130.         einfo
  131.     fi
  132. }
  133.